<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
	<th:block th:include="include :: header('质检上架单')" />
	<th:block th:include="include :: list-css" />
	<style type="text/css">
        .layui-tab-title{border-color: #ccc !important;}
		.layui-this{color: rgb(0, 135, 250) !important;background: none !important;}
        .layui-tab-brief > .layui-tab-title .layui-this:after, .layui-tab-brief > .layui-tab-more li.layui-this:after{border-color:  rgb(0, 135, 250) !important;}
		label.layui-form-label {width: 95px;padding-right: 0px;}
		.layui-form-radio {margin-top:0}
        .mid-content{overflow-y:auto}
		.importTable{empty-cells:show;border-collapse:collapse;border-spacing:0;}
		.listext th{background:#eee;color:#3366cc;}
		.listext th,.listext td{border:solid 1px #ddd;text-align:left;padding:10px;font-size:14px;}
		#importProgress {z-index:20200202;background-color: #000;opacity: 0.3;display:none;}
		.importProgress {width:300px;z-index:20202222;position: fixed;top: 34%;left: 40%;display:none;}
        tr img{width: 30px !important;height: 30px !important;margin: 0 2px;}
        .ishide{display: none;}
        .bagimg{z-index: 999;max-width:200px;border: 5px solid #23b971}
    </style>
</head>
<body>
<div class="ishide"><img class="bagimg" src=""/></div>
<div class="main-content">
	<div class="content-right">
		<div class="search-top">
			<span>查询条件</span>
			<a href="javascript:;" layadmin-event="flexible" class="menuBtn">
				<i class="layui-icon layui-icon-spread-left" id="LAY_app_flexible" style="color: #fff;"></i>
			</a>
		</div>
		<div class="panel layout-expand layui-expand-east">
		    <div class="panel-header">
		        <div class="panel-tool" style="text-align: center; width: 26px;height: 30px;line-height: 30px;">
		            <a href="javascript:;" layadmin-event="flexible" class="menuBtn">
		                <i class="layui-icon layui-icon-shrink-right" id="LAY_app_flexible" style="color: #fff;"></i>
		            </a>
		        </div>
		    </div>
		    <div class="panel-body panel-title" style="text-align: center; width: 26px;">查<br>询<br>条<br>件</div>
		</div>
       	<form class="layui-form">
			<th:block th:include="listinclude :: searchRight('page')" />
		</form>
   	</div>
    <div class="mid-content">
        <div class="layui-tab layui-tab-brief istype" lay-filter="demo1" style="margin-top: 0;">
            <ul class="layui-tab-title" >
              <li class="layui-this">未上架</li>
              <li>已上架</li>
            </ul>
            <div class="layui-tab-content"></div>
          </div>
        <table class="layui-hide" id="dhtable" lay-filter="ftable"></table>

    </div>
</div>
<!-- 表格头部工作栏-->
<script type="text/html" id="toolbar">
	<div class="layui-btn-container">
        <span class="ishide1">
            <div class="layui-btn layui-table-tools importbtn-bg sjqdbtn" lay-event="sjqdbtn" th:if="${extraButton.sjqdbtn}">
                <i class="dhicon layui-icon-search"></i> 上架清单打印
            </div>
            <div class="layui-btn layui-table-tools importbtn-bg zjsjbtn" lay-event="zjsjbtn" th:if="${extraButton.zjsjbtn}">
                <i class="dhicon layui-icon-set-fill"></i> 质检上架
            </div>
            <div class="layui-btn layui-table-tools importbtn-bg drsjbtn" onclick="importBtn()"  lay-event="drsjbtn" th:if="${extraButton.drsjbtn}">
                <i class="dhicon layui-icon-prev"></i> 导入上架
            </div>
            <div class="layui-btn layui-table-tools importbtn-bg padbtn" lay-event="padbtn" th:if="${extraButton.padbtn}">
                <i class="dhicon layui-icon-print"></i> PDA上架
            </div>
            <div class="layui-btn layui-btn-danger layui-table-tools delbtn" onclick="remove()" th:if="${extraButton.delbtn}">
                <p class="dhicon dh-remove" style="color:white;font-size:14px"><span class="fa_span">批量删除</span></p>
            </div>
        </span>

        <div class="layui-btn layui-table-tools importbtn-bg htbtn" style="display: none;" lay-event="htbtn" th:if="${extraButton.htbtn}">
			<i class="dhicon layui-icon-prev"></i> 回退
        </div>

		<div class="layui-btn layui-table-tools importbtn-bg" lay-event="exportbtn" th:if="${extraButton.exportbtn}">
			<i class="dhicon dh-download"></i> 导出
        </div>
    </div>
</script>

<script type="text/template" id="importTpl">
    <form enctype="multipart/form-data" class="mt20 mb10">
        <div class="col-xs-offset-1">
            <input type="file" id="file" name="file"/>
            <div class="mt10 pt5">
                <a onclick="$.tablelist.importTemplate('/storage/putaway/exporttemplate')" class="btn btn-default btn-xs"><i class="dhicon dh-file-excel-o"></i> 下载模板</a>
            </div>
            <font color="red" class="pull-left mt10">提示：仅允许导入“xls”或“xlsx”格式文件！</font>
        </div>
    </form>
</script>
<script type="text/html"  id="file2_img">
    {{# if(d.img){ }}
    <img src="{{d.img}}"/>
    {{# }else{ }}
    {{# } }}
</script>
<script type="text/html"  id="file2_img1">
    {{# if(d.img1){ }}
    <img src="{{d.img1}}"/>
    {{# }else{ }}
    {{# } }}
</script>
<script type="text/html"  id="file2_img2">
    {{# if(d.img2){ }}
    <img src="{{d.img2}}"/>
    {{# }else{ }}
    {{# } }}
</script>
<!-- 导入明细 -->
<div id="iTable" class="display_no">
    <table class="importTable listext" data-resizable-columns-id="demo-table">
        <tbody id="itbody"></tbody>
    </table>
</div>
<script type="text/html" id="inExchange">
    <div class="layui-col-md12">
        <div class="layui-form-item" style="margin-top: 15px;">
            <div class="layui-inline layui-col-md4">
                <label class="layui-form-label"><span class="f_red">*</span>货位编码：</label>
                <div class="layui-input-block">
                    <input type="text" class="layui-input buttontext"
                           name="goodsAllocation1" id="goodsAllocation1" autocomplete="off"
                           readonly lay-verify="required"/>
                    <i class="layui-icon layui-icon-more getMore"
                       onclick="getMore('goodsAllocation',null,'货位编号','tcc_goodsallocation',false, true);"
                       getType="promoteUnit"></i>
                </div>
            </div>
        </div>
    </div>
</script>

<th:block th:include="include :: footer" />
<th:block th:include="include :: businessJS" />
<th:block th:include="include :: searchJS" />
<th:block th:include="listinclude :: list-templeat" />
<script th:inline="javascript">
	/*<![CDATA[*/
	var prefix = ctx + "storage/putaway";
    var tableUrl="/storage/putaway/list?effectStock=0";
	var gridColumns = [[${gridColumns}]],
		importFields =[[${importFields}]],
		extraButton = [[${extraButton}]],
        goodsAllocation = '',
        goodsArea = '',
        warehouseAddress = '',
		moduleTable =[[${moduleTable}]];

	/*]]>*/
</script>
<script type="text/javascript">
var element,thStr;
var fieldWidth = {},		//导入列表字段宽度
	filedRequired = {},		//导入列表必填字段
	dateFiled = [],			//导入列表日期字段
	hasNull = false;		//导入数据必填字段有空值
$.each(gridColumns.dictionaryForPageFieldList,function(i,v){
	fieldWidth[v.fields] = v.fieldFrontWidth
	if(v.fieldFrontRequired)filedRequired[v.fields] = v.fieldName;
	if(v.fieldFrontType == 't_date')dateFiled.push(v.fields);
})
var $,layer,laydate,form,table,wherestr={};
layui.use(['table','laydate','form','layer','jquery','element'], function () {
	$ = layui.$, layer = layui.layer,laydate = layui.laydate , form = layui.form, table = layui.table, element = layui.element;
	serachRender();//查询条件初始渲染集合
	changeDropdown('fSl');//导入窗口——税率下拉可编辑赋事件
    //是否显示头部按钮
    var isbtn=true
	$.tablelist.init({
		elem: '#dhtable'
		,modalName: "产品信息"
		,url: tableUrl
		,updateUrl: prefix + "/edit?guid={id}"
		,initSort: {field: 'createTime',type: 'asc'}
		,totalRow: gridColumns.totalRow
		,cols: [gridColumns.gridBody]
		,toolbar: '#toolbar'
        ,height:'full-46'
		,defaultToolbar: [{title:'列设置',layEvent: 'fieldSet',icon: 'layui-icon-set'}] //这里在右边显示
        ,parseData: function(res){ //res 即为原始返回的数据
			var objpage=sessionStorage.getItem(moduleTable+'checkdata')
			if(objpage){
				objpage=JSON.parse(objpage)
				res.data.map((v,i)=>{
					objpage.map((n,m)=>{
						 if(v.guid==n.guid){
							v.LAY_CHECKED=true
						 }
					})
				})
			}
		}
        ,done:function(res, curr, count){
            firstimg()
			var ltv=this.elem.next('.layui-table-view');//当前table的dom
			res.data.length || count || ltv.find('.layui-table-header').css('display', 'inline-block');//数量为0时(统计报表存在不传count的情况)，表头赋予样式可拉动
			res.data.length || count || ltv.find('.layui-table-box').css('overflow-x', 'auto');//数量为0时(统计报表存在不传count的情况)，表头赋予样式可拉动
            if(!isbtn){
		    	$('.ishide1').hide()
		    	$('.htbtn').show()
		    }else{
                $('.ishide1').show()
		    	$('.htbtn').hide()
		    }
			fixTotal(this);//修复合计行固定列问题
			rowheight(res, curr);//修复合计行固定列问题
			if(typeof listTableDone == 'function')listTableDone();//如果查询列表存在表格加载完成回调事件，则执行
		}
	});
	//监听排序事件
	table.on('sort(ftable)', function(obj){
		$.tablelist.sort('dhtable',obj);
	});

	//监听行双击事件
    table.on('rowDouble(ftable)', function (obj) {
        console.log("===========rowDouble");
        if(isbtn){
			top.layui.index.openTabsPage(prefix+ "/edit?nid="+obj.data.nid,'质检上架单 - 修改')
		}else{
			top.layui.index.openTabsPage(prefix+ "/edit?nid="+obj.data.nid,'质检上架单 - 查看')
		}

    });
    // 多选赋值
    sessionStorage.setItem(moduleTable+'checkdata','')
    table.on('checkbox(ftable)', function(obj){
		var objpage=sessionStorage.getItem(moduleTable+'checkdata')
		if(obj.type=='all'){//判断是否全选
			var objdata=table.checkStatus('dhtable')
			objdata=objdata.data
			if(obj.checked){//判断是否选中
				if(objpage){
					objpage=JSON.parse(objpage)
					objpage=objpage.concat(objdata)
					objpage=newData(objpage)
				}else{
					objpage=objdata
				}
			}else{
				var objpage=JSON.parse(objpage)
				var deldata=table.cache.dhtable
				objpage=delData(objpage,deldata)
			}
			sessionStorage.setItem(moduleTable+'checkdata',JSON.stringify(objpage))
		}else{//点击复选框
			if(objpage){
				objpage=JSON.parse(objpage)
				if(obj.checked){
					objpage.push(obj.data)
				}else{
					objpage.map((v,i)=>{
						if(v.guid==obj.data.guid){
							objpage.splice(i,1)
						}
			    	})
			    }
			}else{
				objpage=[]
				objpage.push(obj.data)
			}
			sessionStorage.setItem(moduleTable+'checkdata',JSON.stringify(objpage))
		}
	});
     //头工具栏事件
	$('.zjbcbtn').click(function(){
		$.post(prefix+'/editpost',{'infoItems':JSON.stringify(table.cache.pdhtable)}, function(res){
			layer.msg(res.msg);
		});
	})
// 头部组装切换
    element.on('tab(demo1)', function(elem){
        if(elem.index==1){
			tableUrl=tableUrl.replace(/0/g,'1')
		}else{
			tableUrl=tableUrl.replace(/1/g,'0')
		}
		table.reload('dhtable',{url:tableUrl});
		if(elem.index==1){
            isbtn=false
			$('.ishide1').hide()
			$('.htbtn').show()
		}else{
            isbtn=true
            $('.ishide1').show()
			$('.htbtn').hide()
		}
	});


	//头工具栏事件
 	table.on('toolbar(ftable)', function(obj){
 	    switch(obj.event){
            case 'zjsjbtn'://质检上架
			        var objpage=sessionStorage.getItem(moduleTable+'checkdata')
					if(!objpage){
						layer.msg("请先选择数据！");
					}else{
                        layer.open({
                            type: 1
                            , title: "请选择货位编码"
                            , shade: 0.3
                            // , area: ['350px', '200px']
                            , offset: '20%'
                            , content: $("#inExchange").html()
                            , btn: ['确定', '取消']
                            , yes: function (index) {
                                if (goodsAllocation) {
                                    var infoItems=JSON.parse(objpage)
                                    var dataAll=[]
                                    $.each(infoItems,function(i,v){
                                        dataAll.push({'bid':v.bid,'effectStock':'1',goodsArea,goodsAllocation,warehouseAddress})
                                    })
                                    $.operate.post(prefix+'/updateType',{infoItems:JSON.stringify(dataAll)},function(result){
                                        setTimeout(function(){
                                            sessionStorage.setItem(moduleTable+'checkdata','')
                                            table.reload('dhtable', {page: {curr: 1},where:getWherestr()});
                                        }, 1000);
                                        layer.closeAll();
                                    });
                                } else {
                                    $.modal.msgWarning('货位信息不可为空！');
                                }
                            }
                            , btn2: function () {
                                layer.closeAll();
                            }
                        });
						// $.modal.confirmCom('确定要质检上架么？',function(result){
					    // 	var infoItems=JSON.parse(objpage)
						// 	var dataAll=[]
						// 	$.each(infoItems,function(i,v){
						// 		dataAll.push({'bid':v.bid,'effectStock':'1'})
						// 	})
					    // 	$.operate.post(prefix+'/updateType',{infoItems:JSON.stringify(dataAll)},function(result){
					    // 		setTimeout(function(){
						// 			sessionStorage.setItem(moduleTable+'checkdata','')
					    // 			table.reload('dhtable', {page: {curr: 1},where:getWherestr()});
					    // 		}, 1000);
					    // 	});
					    // });
					}
				break;
			case 'htbtn'://回退
			        var objpage=sessionStorage.getItem(moduleTable+'checkdata')
					if(!objpage){
						layer.msg("请先选择数据！");
					}else{
						$.modal.confirmCom('确定要回退么？',function(result){
					    	var infoItems=JSON.parse(objpage)
							var dataAll=[]
							$.each(infoItems,function(i,v){
								dataAll.push({'bid':v.bid,'effectStock':'0'})
							})
					    	$.operate.post(prefix+'/updateType',{infoItems:JSON.stringify(dataAll)},function(result){
					    		setTimeout(function(){
									sessionStorage.setItem(moduleTable+'checkdata','')
					    			table.reload('dhtable', {page: {curr: 1},where:getWherestr()});
					    		}, 1000);
					    	});
					    });
					}
				break;
	   		case 'exportbtn':
		   		$.ajax({
		   		    url: '/storage/putaway/export',
		   		    type: 'GET',
		   		    data: getWherestr(),
		   		    dataType: 'json',
		   		    beforeSend: function(){
			   			showloadings(true);
		   		    },
		   		    success: function(result){
		   		    	if (result.code == 0) {
					        window.location.href = ctx + "common/download?fileName=" + encodeURIComponent(result.msg) + "&delete=" + true;
					        parent.$('.page-loading').hide();//页面进行了跳转刷新，需要手动关闭页面的加载动画
						} else if (result.code == web_status.WARNING) {
		                   $.modal.alertWarning(result.msg)
		            	} else {
							$.modal.alertError(result.msg);
						}
				   		showloadings(false);
		   		    }
		   		});
	   		break;
			case 'tableFull'://表格展开
				$('.north .layui-form').hide();
				table.reload('dhtable',{
					defaultToolbar: [{title:'收缩',layEvent:'tableShrink',icon:'layui-icon-screen-restore'}],
					height: $(window).height()-$('.north').height()-60<300?'300':$(window).height()-( $('.north').height()+$('.south').height()+12)
				});
			break;
			case 'tableShrink'://表格收缩
				$('.north .layui-form').show();
				table.reload('dhtable',{
					defaultToolbar: [{title:'展开',layEvent:'tableFull',icon:'layui-icon-screen-full'}],
					height: $(window).height()-$('.north').height()-60<300?'300':$(window).height()-( $('.north').height()+$('.south').height()+12)
				});
			break;
	 	    case 'fieldSet':
 	    		filedSet(moduleTable);
          	break;
 	    };
 	});

    window.importBtn=function(){
        if (importFields) {
            thStr = '<tr><th><div style="width:30px;">序号</div></th>';
            $.each(importFields, function (i, val) {
                fieldWidth[val] = fieldWidth[val] ? fieldWidth[val] : 100;	//默认宽度100px
                thStr += '<th><div style="width:' + fieldWidth[val] + 'px;">' + i + '</div></th>';
            })
            thStr += '</tr>';
            layer.open({
                type: 1,
                area: ['400px', '230px'],
                fix: false,
                offset: '10%',
                maxmin: true,
                shade: 0.3,
                title: '导入',
                content: $('#importTpl').html(),
                btn: ['<i class="dhicon dh-check"></i> 导入', '<i class="dhicon dh-remove"></i> 取消'],
                shadeClose: true,
                zIndex: 1000,
                btn1: function (index, layero) {
                    var file = layero.find('#file');
                    if (!file[0]['value']) {
                        layer.msg("请选择文件！");
                        return false;
                    }
                    var imRes = importListExcel(file[0], importFields, 'putaway');
                }
            });
        } else {
            $.modal.alertWarning("后台未返回导入模板对象！");
        }
    }
 });


/*批量请求导入数据
     *tobj：导入数据对象
     *startNum：从第几条开始导入
     *oneImportNum：每次导入条数
     *allImportNum：总数据量
     *times：导入次数
     */
function eachImport(tobj,startNum, oneImportNum, allImportNum, times, timeNum){
    var importObj = [], inum = startNum, importBl='0%';
    for(var i = startNum; i < startNum + oneImportNum; i++){
        if(i >= allImportNum)break;
        inum = i + 1 ;
        importObj.push(tobj[i]);
    }
    $.ajaxSettings.async = false;
    $.post("/storage/putaway/importdatapost", {'infoItems':JSON.stringify(importObj, null, 2)}, function(result) {
        importBl = (inum/allImportNum)*100;
        importObj = [];
        timeNum += 1;
        showloadings(false);
        layer.msg(result.msg)
        if(result.code==0){
            location.reload();
        }
    },"json");
}

//通过guid彻底删除
function remove(){
    var objpage=sessionStorage.getItem(moduleTable+'checkdata')
	if(!objpage){
		layer.msg("请先选择数据！");
	}else{
		$.modal.confirmCom('确定要删除么？',function(result){
	    	var infoItems=JSON.parse(objpage)
	    	$.operate.post('/storage/putaway/delete',{infoItems:JSON.stringify(infoItems)},function(result){
	    		setTimeout(function(){
	    			table.reload('dhtable', {page: {curr: 1},where:getWherestr()});
	    		}, 1000);
	    	});
	    });
	}
}

function getMoreAfter(fieldsList, fields, tindex, fieldName, fieldSearchType, isSearch, isLayer, res) {//弹出框回调事件
    // console.log('fields', fieldsList, fields, tindex, fieldName, fieldSearchType, isSearch, isLayer, res)
    if (res) {
        $("#goodsAllocation1").val(res.goodsAllocation);
        goodsAllocation = res.goodsAllocation
        goodsArea = res.goodsArea
        warehouseAddress = res.warehouseAddress
    }
}

</script>
</body>
</html>
